package Logica;

import javax.persistence.*;
import java.io.Serializable;

@Entity
public class Repuesto implements Serializable {

    @Id
    private int codigo;
    @Basic
    private String descripcion;
    @Basic
    private float precio;
    @Basic
    private boolean garantia;
    @Basic
    private int impuesto;
    @OneToOne
    private PedidoRepuesto unPedido;
    @ManyToOne
    private Proveedor unProveedor;
    @ManyToOne
    private Taller unTaller;
    @ManyToOne
    private Vehiculo unVehiculo;

    public Repuesto() {
    }

    public Repuesto(int codigo, String descripcion, float precio, boolean garantia, int impuesto, Proveedor unProveedor,
            Taller unTaller, Vehiculo unVehiculo, PedidoRepuesto unPedido) {
        this.codigo = codigo;
        this.descripcion = descripcion;
        this.precio = precio;
        this.garantia = garantia;
        this.impuesto = impuesto;
        this.unProveedor = unProveedor;
        this.unTaller = unTaller;

        this.unVehiculo = unVehiculo;
        this.unPedido = unPedido;
    }

    public void setUnProveedor(Proveedor unProveedor) {
        this.unProveedor = unProveedor;
    }

    public Proveedor getUnProveedor() {
        return unProveedor;
    }

    public int getCodigo() {
        return codigo;
    }

    public String getDescripcion() {
        return descripcion;
    }

    public float getPrecio() {
        return precio;
    }

    public boolean isGarantia() {
        return garantia;
    }

    public int getImpuesto() {
        return impuesto;
    }

    public void setCodigo(int codigo) {
        this.codigo = codigo;
    }

    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    public void setPrecio(float precio) {
        this.precio = precio;
    }

    public void setGarantia(boolean garantia) {
        this.garantia = garantia;
    }

    public void setImpuesto(int impuesto) {
        this.impuesto = impuesto;
    }

    public PedidoRepuesto getUnPedido() {
        return unPedido;
    }

    public void setUnPedido(PedidoRepuesto unPedido) {
        this.unPedido = unPedido;
    }

    public Taller getUnTaller() {
        return unTaller;
    }

    public void setUnTaller(Taller unTaller) {
        this.unTaller = unTaller;
    }

    public Vehiculo getUnVehiculo() {
        return unVehiculo;
    }

    public void setUnVehiculo(Vehiculo unVehiculo) {
        this.unVehiculo = unVehiculo;
    }
    public String toString(){
        return this.getCodigo()+" "+this.getDescripcion();
    }
}
